package com.ying.dogying.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ying.dogying.entity.ImPost;
import com.ying.dogying.entity.dto.ImPostDto;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author 李华明
 * @since 2020-06-01
 */
public interface ImPostService extends IService<ImPost> {

    /**
    * 条件查询文章(分页)
    */
    IPage<ImPostDto> selectByParams(Page page, Long categoryId, Long userId, Integer level, Boolean recommend, String order );

    /**
    * 初始化首页的周评论排行榜
    */
    void initIndexWeekRank();

    /**
     * 查询文章详细信息
     */
    ImPostDto selectOneByParams(Long id);

    /**
     * 新增访问量
     */
    void insertViewCount(ImPostDto imPostDto);

    /**
     * 查询之前30天的文章
     */
    List<ImPost> selectBy30Before(Long id);

    /**
     * 查询我发表的文章
     */
    IPage<ImPost> selectByUserId(Page page, Long profileId);
}
